<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script src="../assert_selection.js"></script>
<script>
selection_test(
    [
      '<div contenteditable="true">',
        '^<span contenteditable="false">',
          '<span contenteditable="true">',
            '<span>foo</span>',
            '<ol>bar</ol>',
          '</span>',
          '<ol>bar</ol>',
        '</span>',
        '<ol>bar|</ol>',
      '</div>',
    ],
    selection => {
      selection.document.designMode = 'on';
      selection.document.execCommand('indent');
    },
    // Note: This is a crash test. The output HTML only reflects the current
    // behavior, which may be incorrect due to the unusual input HTML.
    [
      '<div contenteditable="true">',
        '<blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;">',
          '<span>^foo<br></span>',
          'barbarbar',
        '</blockquote>',
        // TODO(crbug.com/855207): This should be
        // '|<span contenteditable="false">'
        //   '<span contenteditable"true"></span>'
        '<span contenteditable="false">',
          '|<span contenteditable="true"></span>',
          '<ol>bar</ol>',
        '</span>',
      '</div>'
    ],
  'The test passes if it does not rash.');
</script>
